<?php

/**
* @package     JohnCMS
* @link        http://johncms.com
* @copyright   Copyright (C) 2008-2011 JohnCMS Community
* @license     LICENSE.txt (see attached file)
* @version     VERSION.txt (see attached file)
* @author      http://johncms.com/about
*/

defined('_IN_JOHNCMS') or die('Error: restricted access');

$textl = htmlspecialchars($user['name']) . ': ' . $lng_profile['profile_edit'];
require('../incfiles/head.php');
//them khoi tao user sms
require('../aznusoap/lib/nusoap.php');
//-------ket thuc-------
/*
-----------------------------------------------------------------
Проверяем права доступа для редактирования Профиля
-----------------------------------------------------------------
*/
if ($user['id'] != $user_id ) {
    echo functions::display_error($lng_profile['error_rights']);
    require('../incfiles/end.php');
    exit;
}
if ($user['kichhoat'] == 0){
	echo '<br /><p style="padding-left:5px;">Tài khoản chưa kích hoạt thanh toán. Soạn tin nhắn <span class="red">GN ' . $user['name'] . '</span> gửi <span class="red">8013</span> <i>(Phí 500đ)</i> để kích hoạt tài khoản.</p><br />';
    require('../incfiles/end.php');
    exit;
}
/*
-----------------------------------------------------------------
Сброс настроек
-----------------------------------------------------------------
*/
$captcha = isset($_POST['captcha']) ? trim($_POST['captcha']) : NULL;
$reg_nick = isset($_POST['nick']) ? trim($_POST['nick']) : '';
$lat_nick = functions::rus_lat(mb_strtolower($reg_nick));
$reg_pass = isset($_POST['password']) ? trim($_POST['password']) : '';
echo '<div class="phdr"><b>Đăng ký tài khoản người dùng</b></div>';
if (isset($_POST['submit'])) {
    // Принимаем переменные
    $error = array();
    // Проверка Логина
    if (empty($reg_nick))
        $error['login'][] = "Hãy nhập tài khoản đăng nhập!";
    elseif (mb_strlen($reg_nick) < 2 || mb_strlen($reg_nick) > 15)
        $error['login'][] = "Tài khoản đăng nhập không đủ hoặc quá số ký tự cho phép!";
    if (preg_match('/[^\da-z\-\@\*\(\)\?\!\~\_\=\[\]]+/', $lat_nick))
        $error['login'][] = "Tài khoản không được có ký tự đặc biệt!";
    // Проверка пароля
    if (empty($reg_pass)) $error['password'][] = "Hãy đặt mật khẩu đăng nhập cho tài khoản!";
    elseif (mb_strlen($reg_pass) < 3 || mb_strlen($reg_pass) > 10) $error['password'][] = "Mật khẩu đăng nhập quá ngắn hoặc quá dài!";
    if (preg_match('/[^\dA-Za-z]+/', $reg_pass)) $error['password'][] = "Mật khẩu không được có ký tự đặc biệt!";
    // Проверка кода CAPTCHA
    if (!$captcha || !isset($_SESSION['code']) || mb_strlen($captcha) < 4 || $captcha != $_SESSION['code']) $error['captcha'] = $lng['error_wrong_captcha'];
    unset($_SESSION['code']);
    // Проверка переменных
    if (empty($error)) {
        $pass = md5(md5($reg_pass));
        $reg_name = functions::check(mb_substr($reg_name, 0, 20));
        $reg_about = functions::check(mb_substr($reg_about, 0, 500));
        // Проверка, занят ли ник
        $req = mysql_query("SELECT * FROM `users` WHERE `name_lat`='" . mysql_real_escape_string($lat_nick) . "'");
        if (mysql_num_rows($req) != 0) {
            $error['login'][] = "Tài khoản đăng nhập đã được đăng ký!";
        }
    }
    if (empty($error)) {
        $preg = $set['mod_reg'] > 1 ? 1 : 0;
		$setuser = 'a:12:{s:6:"avatar";b:1;s:6:"digest";b:0;s:10:"direct_url";b:0;s:7:"field_h";i:3;s:7:"field_w";i:40;s:5:"kmess";i:20;s:8:"quick_go";b:1;s:9:"timeshift";i:0;s:4:"skin";s:7:"selemet";s:7:"smileys";b:1;s:8:"translit";b:0;s:3:"lng";s:2:"vn";}';		
		$setforum = 'a:5:{s:5:"farea";b:0;s:4:"upfp";b:0;s:7:"preview";b:1;s:8:"postclip";i:1;s:7:"postcut";i:0;}';
		$umobile = $user['mibile'];
		$uparent = $user['id'];
		$reg_mail = $user['mail'];
        mysql_query("INSERT INTO `users` SET
            `name` = '" . mysql_real_escape_string($reg_nick) . "',
            `name_lat` = '" . mysql_real_escape_string($lat_nick) . "',
            `password` = '" . mysql_real_escape_string($pass) . "',
            `imname` = '$reg_nick',
            `rights` = '0',
            `ip` = '" . core::$ip . "',
            `ip_via_proxy` = '" . core::$ip_via_proxy . "',
            `browser` = '" . mysql_real_escape_string($agn) . "',
            `datereg` = '" . time() . "',
            `lastdate` = '" . time() . "',
            `sestime` = '" . time() . "',
			`mail` = '" . $reg_mail . "',
            `preg` = '$preg',
            `set_user` = '$setuser',
            `set_forum` = '$setforum',
            `set_mail` = '',
            `smileys` = '',
			`mibile` = '" . $umobile . "',
			`parent_id` = '" . $uparent . "'
        ") or exit(__LINE__ . ': ' . mysql_error());
        $usid = mysql_insert_id();
		
		//them khoi tao user sms
		$client = new nusoap_client('http://baocao.tiennhanh.com/users/AZCreateUser.php?WSDL', false);
		$err = $client->getError();				
		if ($err) {							
			//loi khong ket noi de tao tai khoan							
			//Cap nhat users status_reg 0 (chua duoc khoi tao) | 1 (duoc khoi tao)							
			mysql_query("UPDATE `users` SET `status_reg` = '0' WHERE `id` = '" . $usid . "'");	
			//echo "UPDATE `users` SET `status_reg` = '0' WHERE `id` = '" . $usid . "'";
			//---------------					
		} else {									
			//$flag chua id nguoi khoi tao user (nguoi gioi thieu user)				
			$rand = substr(str_shuffle("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"), 0, 5);
			$smsreg = md5(md5($rand . $usid . $reg_nick));
			$client->soap_defencoding = 'UTF-8';									
			$param = array(
					"id" => $usid,
					"name" => $reg_nick,
					"check" => $smsreg,
					"mail" => $reg_mail,
					"phone" => $umobile,
					"parentid" => $uparent,
					);
			$result = $client->call('CreateUser', $param);
			//Cap nhat users status_reg 0 (chua duoc khoi tao) | 1 (duoc khoi tao)
			mysql_query("UPDATE `users` SET	`status_reg` = '". $result ."', `smsreg` = '" . $smsreg . "' WHERE `id` = '" . $usid . "'");
			//-----------
		}				
		//-------ket thuc-------
        
       echo '<div class="gmenu"><p>Tạo tài khoản thành công. Hãy soạn tin <b>GN UI ' . $reg_nick . '</b> gửi <b>8013</b> để kích hoạt tài khoản dịch vụ!</p></div>';
        require('../incfiles/end.php');
        exit;
    }
}

/*
-----------------------------------------------------------------
Форма регистрации
-----------------------------------------------------------------
*/
echo'<form action="profile.php?act=reguser" method="post"><div class="gmenu">' .
    '<p><h3>Đăng nhập</h3>' .
    (isset($error['login']) ? '<span class="red"><small>' . implode('<br />', $error['login']) . '</small></span><br />' : '') .
    '<input type="text" name="nick" maxlength="15" value="' . htmlspecialchars($reg_nick) . '"' . (isset($error['login']) ? ' style="background-color: #FFCCCC"' : '') . '/><br />' .
    '<small>Tối thiểu là 2,tối đa là 15 ký tự.
Được sử dụng chữ cái Latin, số và các ký hiệu khác - = @ ! ? ~ _ ( ) [ ] . * (Ngoại trừ số 0)</small></p>' .
    '<p><h3>Mật khẩu</h3>' .
    (isset($error['password']) ? '<span class="red"><small>' . implode('<br />', $error['password']) . '</small></span><br />' : '') .
    '<input type="password" name="password" maxlength="20" value="' . htmlspecialchars($reg_pass) . '"' . (isset($error['password']) ? ' style="background-color: #FFCCCC"' : '') . '/><br/>' .
    '<small>ít nhất 3 ký tự,nhiều nhất 10 ký tự.
Chỉ cho phép chữ cái và số</small></p></div>' .
    '<div class="gmenu"><p>' .
    '<h3>' . $lng_reg['captcha'] . '</h3>' .
    '<img src="../captcha.php?r=' . rand(1000, 9999) . '" alt="' . $lng_reg['captcha'] . '" border="1"/><br />' .
    (isset($error['captcha']) ? '<span class="red"><small>' . $error['captcha'] . '</small></span><br />' : '') .
    '<input type="text" size="5" maxlength="5"  name="captcha" ' . (isset($error['captcha']) ? ' style="background-color: #FFCCCC"' : '') . '/><br />' .
    '<small>' . $lng_reg['captcha_help'] . '</small></p>' .
    '<p><input type="submit" name="submit" value="' . $lng['save']. '"/></p></div></form>';

?>